package island.gotenyama.wand.bean;

import island.gotenyama.wand.annotation.FieldDefinition;

import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;

/**
 * クエリに与えるパラメータを表すクラス
 * 
 * @author tk
 */
public class QueryParams extends MapSqlParameterSource {

	/**
	 * コンストラクタ
	 */
	public QueryParams() {
	}

	/**
	 * コンストラクタ
	 * 
	 * @param aField　フィールド
	 * @param value　値
	 */
	public QueryParams(AField aField, Object value) {
		FieldDefinition def = aField.getFieldDefinition();
		addValue(def.name(), value, def.typeDB().sqlType);
	}

	/**
	 * パラメータを追加する。
	 * 
	 * @param aField　フィールド
	 * @param value　値
	 */
	public void add(AField aField, Object value) {
		FieldDefinition def = aField.getFieldDefinition();
		addValue(def.name(), value, def.typeDB().sqlType);
	}
}
